<!DOCTYPE HTML>

<html lang="en">
<head>

<title>AbstractRememberMeServices (spring-security-docs 5.6.3 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../../jquery/jquery-3.5.1.js"></script>
<script type="text/javascript" src="../../../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="AbstractRememberMeServices (spring-security-docs 5.6.3 API)";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":6,"i18":6,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">

<div class="topNav"><a id="navbar.top">

</a>
<div class="skipNav"><a href="AbstractRememberMeServices.html#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">

</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="AbstractRememberMeServices.html#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="AbstractRememberMeServices.html#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="AbstractRememberMeServices.html#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="AbstractRememberMeServices.html#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="AbstractRememberMeServices.html#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="AbstractRememberMeServices.html#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">

</a></div>

</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>

<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.springframework.security.web.authentication.rememberme</a></div>
<h2 title="Class AbstractRememberMeServices" class="title">Class AbstractRememberMeServices</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.springframework.security.web.authentication.rememberme.AbstractRememberMeServices</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code>org.springframework.beans.factory.Aware</code>, <code>org.springframework.beans.factory.InitializingBean</code>, <code>org.springframework.context.MessageSourceAware</code>, <code><a href="../logout/LogoutHandler.html" title="interface in org.springframework.security.web.authentication.logout">LogoutHandler</a></code>, <code><a href="../RememberMeServices.html" title="interface in org.springframework.security.web.authentication">RememberMeServices</a></code></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><code><a href="PersistentTokenBasedRememberMeServices.html" title="class in org.springframework.security.web.authentication.rememberme">PersistentTokenBasedRememberMeServices</a></code>, <code><a href="TokenBasedRememberMeServices.html" title="class in org.springframework.security.web.authentication.rememberme">TokenBasedRememberMeServices</a></code></dd>
</dl>
<hr>
<pre>public abstract class <span class="typeNameLabel">AbstractRememberMeServices</span>
extends java.lang.Object
implements <a href="../RememberMeServices.html" title="interface in org.springframework.security.web.authentication">RememberMeServices</a>, org.springframework.beans.factory.InitializingBean, <a href="../logout/LogoutHandler.html" title="interface in org.springframework.security.web.authentication.logout">LogoutHandler</a>, org.springframework.context.MessageSourceAware</pre>
<div class="block">Base class for RememberMeServices implementations.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">

<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">

</a>
<h3>Field Summary</h3>
<table class="memberSummary">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#DEFAULT_PARAMETER">DEFAULT_PARAMETER</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected org.apache.commons.logging.Log</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#logger">logger</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected org.springframework.context.support.MessageSourceAccessor</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#messages">messages</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#SPRING_SECURITY_REMEMBER_ME_COOKIE_KEY">SPRING_SECURITY_REMEMBER_ME_COOKIE_KEY</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#TWO_WEEKS_S">TWO_WEEKS_S</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>

<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">

</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colSecond" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#%3Cinit%3E(java.lang.String,org.springframework.security.core.userdetails.UserDetailsService)">AbstractRememberMeServices</a></span>&#8203;(java.lang.String&nbsp;key,
<a href="../../../core/userdetails/UserDetailsService.html" title="interface in org.springframework.security.core.userdetails">UserDetailsService</a>&nbsp;userDetailsService)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>

<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">

</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#afterPropertiesSet()">afterPropertiesSet</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../../core/Authentication.html" title="interface in org.springframework.security.core">Authentication</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#autoLogin(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">autoLogin</a></span>&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
javax.servlet.http.HttpServletResponse&nbsp;response)</code></th>
<td class="colLast">
<div class="block">Template implementation which locates the Spring Security cookie, decodes it into a
delimited array of tokens and submits it to subclasses for processing via the
<tt>processAutoLoginCookie</tt> method.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#cancelCookie(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">cancelCookie</a></span>&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
javax.servlet.http.HttpServletResponse&nbsp;response)</code></th>
<td class="colLast">
<div class="block">Sets a "cancel cookie" (with maxAge = 0) on the response to disable persistent
logins.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../core/Authentication.html" title="interface in org.springframework.security.core">Authentication</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#createSuccessfulAuthentication(javax.servlet.http.HttpServletRequest,org.springframework.security.core.userdetails.UserDetails)">createSuccessfulAuthentication</a></span>&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
<a href="../../../core/userdetails/UserDetails.html" title="interface in org.springframework.security.core.userdetails">UserDetails</a>&nbsp;user)</code></th>
<td class="colLast">
<div class="block">Creates the final <tt>Authentication</tt> object returned from the
<tt>autoLogin</tt> method.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>protected java.lang.String[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#decodeCookie(java.lang.String)">decodeCookie</a></span>&#8203;(java.lang.String&nbsp;cookieValue)</code></th>
<td class="colLast">
<div class="block">Decodes the cookie and splits it into a set of token strings using the ":"
delimiter.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>protected java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#encodeCookie(java.lang.String%5B%5D)">encodeCookie</a></span>&#8203;(java.lang.String[]&nbsp;cookieTokens)</code></th>
<td class="colLast">
<div class="block">Inverse operation of decodeCookie.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>protected java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#extractRememberMeCookie(javax.servlet.http.HttpServletRequest)">extractRememberMeCookie</a></span>&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request)</code></th>
<td class="colLast">
<div class="block">Locates the Spring Security remember me cookie in the request and returns its
value.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../authentication/AuthenticationDetailsSource.html" title="interface in org.springframework.security.authentication">AuthenticationDetailsSource</a>&lt;javax.servlet.http.HttpServletRequest,&#8203;?&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#getAuthenticationDetailsSource()">getAuthenticationDetailsSource</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>protected java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#getCookieName()">getCookieName</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#getKey()">getKey</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#getParameter()">getParameter</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>protected int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#getTokenValiditySeconds()">getTokenValiditySeconds</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>protected <a href="../../../core/userdetails/UserDetailsService.html" title="interface in org.springframework.security.core.userdetails">UserDetailsService</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#getUserDetailsService()">getUserDetailsService</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#loginFail(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">loginFail</a></span>&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
 javax.servlet.http.HttpServletResponse&nbsp;response)</code></th>
<td class="colLast">
<div class="block">Called whenever an interactive authentication attempt was made, but the credentials
supplied by the user were missing or otherwise invalid.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#loginSuccess(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,org.springframework.security.core.Authentication)">loginSuccess</a></span>&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
javax.servlet.http.HttpServletResponse&nbsp;response,
<a href="../../../core/Authentication.html" title="interface in org.springframework.security.core">Authentication</a>&nbsp;successfulAuthentication)</code></th>
<td class="colLast">
<div class="block">Called whenever an interactive authentication attempt is successful.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#logout(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,org.springframework.security.core.Authentication)">logout</a></span>&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
javax.servlet.http.HttpServletResponse&nbsp;response,
<a href="../../../core/Authentication.html" title="interface in org.springframework.security.core">Authentication</a>&nbsp;authentication)</code></th>
<td class="colLast">
<div class="block">Implementation of <code>LogoutHandler</code>.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#onLoginFail(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">onLoginFail</a></span>&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
javax.servlet.http.HttpServletResponse&nbsp;response)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#onLoginSuccess(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,org.springframework.security.core.Authentication)">onLoginSuccess</a></span>&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
javax.servlet.http.HttpServletResponse&nbsp;response,
<a href="../../../core/Authentication.html" title="interface in org.springframework.security.core">Authentication</a>&nbsp;successfulAuthentication)</code></th>
<td class="colLast">
<div class="block">Called from loginSuccess when a remember-me login has been requested.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>protected abstract <a href="../../../core/userdetails/UserDetails.html" title="interface in org.springframework.security.core.userdetails">UserDetails</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#processAutoLoginCookie(java.lang.String%5B%5D,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">processAutoLoginCookie</a></span>&#8203;(java.lang.String[]&nbsp;cookieTokens,
javax.servlet.http.HttpServletRequest&nbsp;request,
javax.servlet.http.HttpServletResponse&nbsp;response)</code></th>
<td class="colLast">
<div class="block">Called from autoLogin to process the submitted persistent login cookie.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#rememberMeRequested(javax.servlet.http.HttpServletRequest,java.lang.String)">rememberMeRequested</a></span>&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
java.lang.String&nbsp;parameter)</code></th>
<td class="colLast">
<div class="block">Allows customization of whether a remember-me login has been requested.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#setAlwaysRemember(boolean)">setAlwaysRemember</a></span>&#8203;(boolean&nbsp;alwaysRemember)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#setAuthenticationDetailsSource(org.springframework.security.authentication.AuthenticationDetailsSource)">setAuthenticationDetailsSource</a></span>&#8203;(<a href="../../../authentication/AuthenticationDetailsSource.html" title="interface in org.springframework.security.authentication">AuthenticationDetailsSource</a>&lt;javax.servlet.http.HttpServletRequest,&#8203;?&gt;&nbsp;authenticationDetailsSource)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#setAuthoritiesMapper(org.springframework.security.core.authority.mapping.GrantedAuthoritiesMapper)">setAuthoritiesMapper</a></span>&#8203;(<a href="../../../core/authority/mapping/GrantedAuthoritiesMapper.html" title="interface in org.springframework.security.core.authority.mapping">GrantedAuthoritiesMapper</a>&nbsp;authoritiesMapper)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#setCookie(java.lang.String%5B%5D,int,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">setCookie</a></span>&#8203;(java.lang.String[]&nbsp;tokens,
int&nbsp;maxAge,
javax.servlet.http.HttpServletRequest&nbsp;request,
javax.servlet.http.HttpServletResponse&nbsp;response)</code></th>
<td class="colLast">
<div class="block">Sets the cookie on the response.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#setCookieDomain(java.lang.String)">setCookieDomain</a></span>&#8203;(java.lang.String&nbsp;cookieDomain)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#setCookieName(java.lang.String)">setCookieName</a></span>&#8203;(java.lang.String&nbsp;cookieName)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#setMessageSource(org.springframework.context.MessageSource)">setMessageSource</a></span>&#8203;(org.springframework.context.MessageSource&nbsp;messageSource)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#setParameter(java.lang.String)">setParameter</a></span>&#8203;(java.lang.String&nbsp;parameter)</code></th>
<td class="colLast">
<div class="block">Sets the name of the parameter which should be checked for to see if a remember-me
has been requested during a login request.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#setTokenValiditySeconds(int)">setTokenValiditySeconds</a></span>&#8203;(int&nbsp;tokenValiditySeconds)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#setUserDetailsChecker(org.springframework.security.core.userdetails.UserDetailsChecker)">setUserDetailsChecker</a></span>&#8203;(<a href="../../../core/userdetails/UserDetailsChecker.html" title="interface in org.springframework.security.core.userdetails">UserDetailsChecker</a>&nbsp;userDetailsChecker)</code></th>
<td class="colLast">
<div class="block">Sets the strategy to be used to validate the <code>UserDetails</code> object obtained
for the user when processing a remember-me cookie to automatically log in a user.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="AbstractRememberMeServices.html#setUseSecureCookie(boolean)">setUseSecureCookie</a></span>&#8203;(boolean&nbsp;useSecureCookie)</code></th>
<td class="colLast">
<div class="block">Whether the cookie should be flagged as secure or not.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">

</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">

<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.detail">

</a>
<h3>Field Detail</h3>
<a id="SPRING_SECURITY_REMEMBER_ME_COOKIE_KEY">

</a>
<ul class="blockList">
<li class="blockList">
<h4>SPRING_SECURITY_REMEMBER_ME_COOKIE_KEY</h4>
<pre>public static final&nbsp;java.lang.String SPRING_SECURITY_REMEMBER_ME_COOKIE_KEY</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.springframework.security.web.authentication.rememberme.AbstractRememberMeServices.SPRING_SECURITY_REMEMBER_ME_COOKIE_KEY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="DEFAULT_PARAMETER">

</a>
<ul class="blockList">
<li class="blockList">
<h4>DEFAULT_PARAMETER</h4>
<pre>public static final&nbsp;java.lang.String DEFAULT_PARAMETER</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.springframework.security.web.authentication.rememberme.AbstractRememberMeServices.DEFAULT_PARAMETER">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="TWO_WEEKS_S">

</a>
<ul class="blockList">
<li class="blockList">
<h4>TWO_WEEKS_S</h4>
<pre>public static final&nbsp;int TWO_WEEKS_S</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#org.springframework.security.web.authentication.rememberme.AbstractRememberMeServices.TWO_WEEKS_S">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="logger">

</a>
<ul class="blockList">
<li class="blockList">
<h4>logger</h4>
<pre>protected final&nbsp;org.apache.commons.logging.Log logger</pre>
</li>
</ul>
<a id="messages">

</a>
<ul class="blockListLast">
<li class="blockList">
<h4>messages</h4>
<pre>protected&nbsp;org.springframework.context.support.MessageSourceAccessor messages</pre>
</li>
</ul>
</li>
</ul>
</section>

<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">

</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;(java.lang.String,org.springframework.security.core.userdetails.UserDetailsService)">

</a>
<ul class="blockListLast">
<li class="blockList">
<h4>AbstractRememberMeServices</h4>
<pre>protected&nbsp;AbstractRememberMeServices&#8203;(java.lang.String&nbsp;key,
                                     <a href="../../../core/userdetails/UserDetailsService.html" title="interface in org.springframework.security.core.userdetails">UserDetailsService</a>&nbsp;userDetailsService)</pre>
</li>
</ul>
</li>
</ul>
</section>

<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">

</a>
<h3>Method Detail</h3>
<a id="afterPropertiesSet()">

</a>
<ul class="blockList">
<li class="blockList">
<h4>afterPropertiesSet</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;afterPropertiesSet()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>afterPropertiesSet</code>&nbsp;in interface&nbsp;<code>org.springframework.beans.factory.InitializingBean</code></dd>
</dl>
</li>
</ul>
<a id="autoLogin(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>autoLogin</h4>
<pre class="methodSignature">public final&nbsp;<a href="../../../core/Authentication.html" title="interface in org.springframework.security.core">Authentication</a>&nbsp;autoLogin&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
                                      javax.servlet.http.HttpServletResponse&nbsp;response)</pre>
<div class="block">Template implementation which locates the Spring Security cookie, decodes it into a
delimited array of tokens and submits it to subclasses for processing via the
<tt>processAutoLoginCookie</tt> method.
<p>
The returned username is then used to load the UserDetails object for the user,
which in turn is used to create a valid authentication token.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../RememberMeServices.html#autoLogin(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">autoLogin</a></code>&nbsp;in interface&nbsp;<code><a href="../RememberMeServices.html" title="interface in org.springframework.security.web.authentication">RememberMeServices</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>request</code> - to look for a remember-me token within</dd>
<dd><code>response</code> - to change, cancel or modify the remember-me token</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a valid authentication object, or <code>null</code> if the request should
not be authenticated</dd>
</dl>
</li>
</ul>
<a id="extractRememberMeCookie(javax.servlet.http.HttpServletRequest)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>extractRememberMeCookie</h4>
<pre class="methodSignature">protected&nbsp;java.lang.String&nbsp;extractRememberMeCookie&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request)</pre>
<div class="block">Locates the Spring Security remember me cookie in the request and returns its
value. The cookie is searched for by name and also by matching the context path to
the cookie path.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>request</code> - the submitted request which is to be authenticated</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the cookie value (if present), null otherwise.</dd>
</dl>
</li>
</ul>
<a id="createSuccessfulAuthentication(javax.servlet.http.HttpServletRequest,org.springframework.security.core.userdetails.UserDetails)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>createSuccessfulAuthentication</h4>
<pre class="methodSignature">protected&nbsp;<a href="../../../core/Authentication.html" title="interface in org.springframework.security.core">Authentication</a>&nbsp;createSuccessfulAuthentication&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
                                                        <a href="../../../core/userdetails/UserDetails.html" title="interface in org.springframework.security.core.userdetails">UserDetails</a>&nbsp;user)</pre>
<div class="block">Creates the final <tt>Authentication</tt> object returned from the
<tt>autoLogin</tt> method.
<p>
By default it will create a <tt>RememberMeAuthenticationToken</tt> instance.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>request</code> - the original request. The configured
<tt>AuthenticationDetailsSource</tt> will use this to build the details property of
the returned object.</dd>
<dd><code>user</code> - the <tt>UserDetails</tt> loaded from the <tt>UserDetailsService</tt>.
This will be stored as the principal.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <tt>Authentication</tt> for the remember-me authenticated user</dd>
</dl>
</li>
</ul>
<a id="decodeCookie(java.lang.String)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>decodeCookie</h4>
<pre class="methodSignature">protected&nbsp;java.lang.String[]&nbsp;decodeCookie&#8203;(java.lang.String&nbsp;cookieValue)
                                   throws <a href="InvalidCookieException.html" title="class in org.springframework.security.web.authentication.rememberme">InvalidCookieException</a></pre>
<div class="block">Decodes the cookie and splits it into a set of token strings using the ":"
delimiter.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>cookieValue</code> - the value obtained from the submitted cookie</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the array of tokens.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="InvalidCookieException.html" title="class in org.springframework.security.web.authentication.rememberme">InvalidCookieException</a></code> - if the cookie was not base64 encoded.</dd>
</dl>
</li>
</ul>
<a id="encodeCookie(java.lang.String[])">

</a>
<ul class="blockList">
<li class="blockList">
<h4>encodeCookie</h4>
<pre class="methodSignature">protected&nbsp;java.lang.String&nbsp;encodeCookie&#8203;(java.lang.String[]&nbsp;cookieTokens)</pre>
<div class="block">Inverse operation of decodeCookie.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>cookieTokens</code> - the tokens to be encoded.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>base64 encoding of the tokens concatenated with the ":" delimiter.</dd>
</dl>
</li>
</ul>
<a id="loginFail(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>loginFail</h4>
<pre class="methodSignature">public final&nbsp;void&nbsp;loginFail&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
                            javax.servlet.http.HttpServletResponse&nbsp;response)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../RememberMeServices.html#loginFail(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">RememberMeServices</a></code></span></div>
<div class="block">Called whenever an interactive authentication attempt was made, but the credentials
supplied by the user were missing or otherwise invalid. Implementations should
invalidate any and all remember-me tokens indicated in the
<code>HttpServletRequest</code>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../RememberMeServices.html#loginFail(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">loginFail</a></code>&nbsp;in interface&nbsp;<code><a href="../RememberMeServices.html" title="interface in org.springframework.security.web.authentication">RememberMeServices</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>request</code> - that contained an invalid authentication request</dd>
<dd><code>response</code> - to change, cancel or modify the remember-me token</dd>
</dl>
</li>
</ul>
<a id="onLoginFail(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>onLoginFail</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;onLoginFail&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
                           javax.servlet.http.HttpServletResponse&nbsp;response)</pre>
</li>
</ul>
<a id="loginSuccess(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,org.springframework.security.core.Authentication)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>loginSuccess</h4>
<pre class="methodSignature">public final&nbsp;void&nbsp;loginSuccess&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
                               javax.servlet.http.HttpServletResponse&nbsp;response,
                               <a href="../../../core/Authentication.html" title="interface in org.springframework.security.core">Authentication</a>&nbsp;successfulAuthentication)</pre>
<div class="block">Called whenever an interactive authentication attempt is successful. An
implementation may automatically set a remember-me token in the
<code>HttpServletResponse</code>, although this is not recommended. Instead,
implementations should typically look for a request parameter that indicates the
browser has presented an explicit request for authentication to be remembered, such
as the presence of a HTTP POST parameter.
<p>
Examines the incoming request and checks for the presence of the configured
"remember me" parameter. If it's present, or if <tt>alwaysRemember</tt> is set to
true, calls <tt>onLoginSucces</tt>.
</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../RememberMeServices.html#loginSuccess(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,org.springframework.security.core.Authentication)">loginSuccess</a></code>&nbsp;in interface&nbsp;<code><a href="../RememberMeServices.html" title="interface in org.springframework.security.web.authentication">RememberMeServices</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>request</code> - that contained the valid authentication request</dd>
<dd><code>response</code> - to change, cancel or modify the remember-me token</dd>
<dd><code>successfulAuthentication</code> - representing the successfully authenticated
principal</dd>
</dl>
</li>
</ul>
<a id="onLoginSuccess(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,org.springframework.security.core.Authentication)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>onLoginSuccess</h4>
<pre class="methodSignature">protected abstract&nbsp;void&nbsp;onLoginSuccess&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
                                       javax.servlet.http.HttpServletResponse&nbsp;response,
                                       <a href="../../../core/Authentication.html" title="interface in org.springframework.security.core">Authentication</a>&nbsp;successfulAuthentication)</pre>
<div class="block">Called from loginSuccess when a remember-me login has been requested. Typically
implemented by subclasses to set a remember-me cookie and potentially store a
record of it if the implementation requires this.</div>
</li>
</ul>
<a id="rememberMeRequested(javax.servlet.http.HttpServletRequest,java.lang.String)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>rememberMeRequested</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;rememberMeRequested&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
                                      java.lang.String&nbsp;parameter)</pre>
<div class="block">Allows customization of whether a remember-me login has been requested. The default
is to return true if <tt>alwaysRemember</tt> is set or the configured parameter
name has been included in the request and is set to the value "true".</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>request</code> - the request submitted from an interactive login, which may include
additional information indicating that a persistent login is desired.</dd>
<dd><code>parameter</code> - the configured remember-me parameter name.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the request includes information indicating that a persistent login
has been requested.</dd>
</dl>
</li>
</ul>
<a id="processAutoLoginCookie(java.lang.String[],javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>processAutoLoginCookie</h4>
<pre class="methodSignature">protected abstract&nbsp;<a href="../../../core/userdetails/UserDetails.html" title="interface in org.springframework.security.core.userdetails">UserDetails</a>&nbsp;processAutoLoginCookie&#8203;(java.lang.String[]&nbsp;cookieTokens,
                                                      javax.servlet.http.HttpServletRequest&nbsp;request,
                                                      javax.servlet.http.HttpServletResponse&nbsp;response)
                                               throws <a href="RememberMeAuthenticationException.html" title="class in org.springframework.security.web.authentication.rememberme">RememberMeAuthenticationException</a>,
                                                      <a href="../../../core/userdetails/UsernameNotFoundException.html" title="class in org.springframework.security.core.userdetails">UsernameNotFoundException</a></pre>
<div class="block">Called from autoLogin to process the submitted persistent login cookie. Subclasses
should validate the cookie and perform any additional management required.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>cookieTokens</code> - the decoded and tokenized cookie value</dd>
<dd><code>request</code> - the request</dd>
<dd><code>response</code> - the response, to allow the cookie to be modified if required.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the UserDetails for the corresponding user account if the cookie was
validated successfully.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="RememberMeAuthenticationException.html" title="class in org.springframework.security.web.authentication.rememberme">RememberMeAuthenticationException</a></code> - if the cookie is invalid or the login is
invalid for some other reason.</dd>
<dd><code><a href="../../../core/userdetails/UsernameNotFoundException.html" title="class in org.springframework.security.core.userdetails">UsernameNotFoundException</a></code> - if the user account corresponding to the login
cookie couldn't be found (for example if the user has been removed from the
system).</dd>
</dl>
</li>
</ul>
<a id="cancelCookie(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>cancelCookie</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;cancelCookie&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
                            javax.servlet.http.HttpServletResponse&nbsp;response)</pre>
<div class="block">Sets a "cancel cookie" (with maxAge = 0) on the response to disable persistent
logins.</div>
</li>
</ul>
<a id="setCookie(java.lang.String[],int,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>setCookie</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;setCookie&#8203;(java.lang.String[]&nbsp;tokens,
                         int&nbsp;maxAge,
                         javax.servlet.http.HttpServletRequest&nbsp;request,
                         javax.servlet.http.HttpServletResponse&nbsp;response)</pre>
<div class="block">Sets the cookie on the response.
By default a secure cookie will be used if the connection is secure. You can set
the <code>useSecureCookie</code> property to <code>false</code> to override this. If you set
it to <code>true</code>, the cookie will always be flagged as secure. By default the
cookie will be marked as HttpOnly.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>tokens</code> - the tokens which will be encoded to make the cookie value.</dd>
<dd><code>maxAge</code> - the value passed to <code>Cookie.setMaxAge(int)</code></dd>
<dd><code>request</code> - the request</dd>
<dd><code>response</code> - the response to add the cookie to.</dd>
</dl>
</li>
</ul>
<a id="logout(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,org.springframework.security.core.Authentication)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>logout</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;logout&#8203;(javax.servlet.http.HttpServletRequest&nbsp;request,
                   javax.servlet.http.HttpServletResponse&nbsp;response,
                   <a href="../../../core/Authentication.html" title="interface in org.springframework.security.core">Authentication</a>&nbsp;authentication)</pre>
<div class="block">Implementation of <code>LogoutHandler</code>. Default behaviour is to call
<code>cancelCookie()</code>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../logout/LogoutHandler.html#logout(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,org.springframework.security.core.Authentication)">logout</a></code>&nbsp;in interface&nbsp;<code><a href="../logout/LogoutHandler.html" title="interface in org.springframework.security.web.authentication.logout">LogoutHandler</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>request</code> - the HTTP request</dd>
<dd><code>response</code> - the HTTP response</dd>
<dd><code>authentication</code> - the current principal details</dd>
</dl>
</li>
</ul>
<a id="setCookieName(java.lang.String)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>setCookieName</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setCookieName&#8203;(java.lang.String&nbsp;cookieName)</pre>
</li>
</ul>
<a id="setCookieDomain(java.lang.String)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>setCookieDomain</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setCookieDomain&#8203;(java.lang.String&nbsp;cookieDomain)</pre>
</li>
</ul>
<a id="getCookieName()">

</a>
<ul class="blockList">
<li class="blockList">
<h4>getCookieName</h4>
<pre class="methodSignature">protected&nbsp;java.lang.String&nbsp;getCookieName()</pre>
</li>
</ul>
<a id="setAlwaysRemember(boolean)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>setAlwaysRemember</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setAlwaysRemember&#8203;(boolean&nbsp;alwaysRemember)</pre>
</li>
</ul>
<a id="setParameter(java.lang.String)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>setParameter</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setParameter&#8203;(java.lang.String&nbsp;parameter)</pre>
<div class="block">Sets the name of the parameter which should be checked for to see if a remember-me
has been requested during a login request. This should be the same name you assign
to the checkbox in your login form.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>parameter</code> - the HTTP request parameter</dd>
</dl>
</li>
</ul>
<a id="getParameter()">

</a>
<ul class="blockList">
<li class="blockList">
<h4>getParameter</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getParameter()</pre>
</li>
</ul>
<a id="getUserDetailsService()">

</a>
<ul class="blockList">
<li class="blockList">
<h4>getUserDetailsService</h4>
<pre class="methodSignature">protected&nbsp;<a href="../../../core/userdetails/UserDetailsService.html" title="interface in org.springframework.security.core.userdetails">UserDetailsService</a>&nbsp;getUserDetailsService()</pre>
</li>
</ul>
<a id="getKey()">

</a>
<ul class="blockList">
<li class="blockList">
<h4>getKey</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getKey()</pre>
</li>
</ul>
<a id="setTokenValiditySeconds(int)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>setTokenValiditySeconds</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setTokenValiditySeconds&#8203;(int&nbsp;tokenValiditySeconds)</pre>
</li>
</ul>
<a id="getTokenValiditySeconds()">

</a>
<ul class="blockList">
<li class="blockList">
<h4>getTokenValiditySeconds</h4>
<pre class="methodSignature">protected&nbsp;int&nbsp;getTokenValiditySeconds()</pre>
</li>
</ul>
<a id="setUseSecureCookie(boolean)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>setUseSecureCookie</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setUseSecureCookie&#8203;(boolean&nbsp;useSecureCookie)</pre>
<div class="block">Whether the cookie should be flagged as secure or not. Secure cookies can only be
sent over an HTTPS connection and thus cannot be accidentally submitted over HTTP
where they could be intercepted.
<p>
By default the cookie will be secure if the request is secure. If you only want to
use remember-me over HTTPS (recommended) you should set this property to
<code>true</code>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>useSecureCookie</code> - set to <code>true</code> to always user secure cookies,
<code>false</code> to disable their use.</dd>
</dl>
</li>
</ul>
<a id="getAuthenticationDetailsSource()">

</a>
<ul class="blockList">
<li class="blockList">
<h4>getAuthenticationDetailsSource</h4>
<pre class="methodSignature">protected&nbsp;<a href="../../../authentication/AuthenticationDetailsSource.html" title="interface in org.springframework.security.authentication">AuthenticationDetailsSource</a>&lt;javax.servlet.http.HttpServletRequest,&#8203;?&gt;&nbsp;getAuthenticationDetailsSource()</pre>
</li>
</ul>
<a id="setAuthenticationDetailsSource(org.springframework.security.authentication.AuthenticationDetailsSource)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>setAuthenticationDetailsSource</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setAuthenticationDetailsSource&#8203;(<a href="../../../authentication/AuthenticationDetailsSource.html" title="interface in org.springframework.security.authentication">AuthenticationDetailsSource</a>&lt;javax.servlet.http.HttpServletRequest,&#8203;?&gt;&nbsp;authenticationDetailsSource)</pre>
</li>
</ul>
<a id="setUserDetailsChecker(org.springframework.security.core.userdetails.UserDetailsChecker)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>setUserDetailsChecker</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setUserDetailsChecker&#8203;(<a href="../../../core/userdetails/UserDetailsChecker.html" title="interface in org.springframework.security.core.userdetails">UserDetailsChecker</a>&nbsp;userDetailsChecker)</pre>
<div class="block">Sets the strategy to be used to validate the <code>UserDetails</code> object obtained
for the user when processing a remember-me cookie to automatically log in a user.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>userDetailsChecker</code> - the strategy which will be passed the user object to
allow it to be rejected if account should not be allowed to authenticate (if it is
locked, for example). Defaults to a <code>AccountStatusUserDetailsChecker</code>
instance.</dd>
</dl>
</li>
</ul>
<a id="setAuthoritiesMapper(org.springframework.security.core.authority.mapping.GrantedAuthoritiesMapper)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>setAuthoritiesMapper</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setAuthoritiesMapper&#8203;(<a href="../../../core/authority/mapping/GrantedAuthoritiesMapper.html" title="interface in org.springframework.security.core.authority.mapping">GrantedAuthoritiesMapper</a>&nbsp;authoritiesMapper)</pre>
</li>
</ul>
<a id="setMessageSource(org.springframework.context.MessageSource)">

</a>
<ul class="blockListLast">
<li class="blockList">
<h4>setMessageSource</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setMessageSource&#8203;(org.springframework.context.MessageSource&nbsp;messageSource)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>setMessageSource</code>&nbsp;in interface&nbsp;<code>org.springframework.context.MessageSourceAware</code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>5.5</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>

<footer role="contentinfo">
<nav role="navigation">

<div class="bottomNav"><a id="navbar.bottom">

</a>
<div class="skipNav"><a href="AbstractRememberMeServices.html#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">

</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="AbstractRememberMeServices.html#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="AbstractRememberMeServices.html#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="AbstractRememberMeServices.html#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="AbstractRememberMeServices.html#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="AbstractRememberMeServices.html#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="AbstractRememberMeServices.html#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">

</a></div>

</nav>
</footer>
<script>if (window.parent == window) {(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,'script','//www.google-analytics.com/analytics.js','ga');ga('create', 'UA-2728886-23', 'auto', {'siteSpeedSampleRate': 100});ga('send', 'pageview');}</script><script defer src="https://static.cloudflareinsights.com/beacon.min.js/v652eace1692a40cfa3763df669d7439c1639079717194" integrity="sha512-Gi7xpJR8tSkrpF7aordPZQlW2DLtzUlZcumS8dMQjwDHEnw9I7ZLyiOj/6tZStRBGtGgN6ceN6cMH8z7etPGlw==" data-cf-beacon='{"rayId":"7040cef3bbe1980c","token":"bffcb8a918ae4755926f76178bfbd26b","version":"2021.12.0","si":100}' crossorigin="anonymous"></script>
</body>
</html>
